home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 23 / CU Amiga - Super CD-ROM 23 (June 1998).iso / CUCD / Games / ADoomPPC / src / r_draw.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-03-13  |  2.5 KB  |  121 lines

  1. // Emacs style mode select   -*- C++ -*- 
  2. //-----------------------------------------------------------------------------
  3. //
  4. // $Id:$
  5. //
  6. // Copyright (C) 1993-1996 by id Software, Inc.
  7. //
  8. // This source is available for distribution and/or modification
  9. // only under the terms of the DOOM Source Code License as
  10. // published by id Software. All rights reserved.
  11. //
  12. // The source is distributed in the hope that it will be useful,
  13. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. // FITNESS FOR A PARTICULAR PURPOSE. See the DOOM Source Code License
  15. // for more details.
  16. //
  17. // DESCRIPTION:
  18. //    System specific interface stuff.
  19. //
  20. //-----------------------------------------------------------------------------
  21.  
  22.  
  23. #ifndef __R_DRAW__
  24. #define __R_DRAW__
  25.  
  26. #ifdef AMIGA
  27. #include "amiga_macros.h"
  28. #endif
  29.  
  30. #ifdef __GNUG__
  31. #pragma interface
  32. #endif
  33.  
  34.  
  35. extern lighttable_t*    dc_colormap;
  36. extern int        dc_x;
  37. extern int        dc_yl;
  38. extern int        dc_yh;
  39. extern fixed_t        dc_iscale;
  40. extern fixed_t        dc_texturemid;
  41.  
  42. // first pixel in a column
  43. extern byte*        dc_source;        
  44.  
  45.  
  46. void resinit_r_draw (void);
  47.  
  48.  
  49. // The span blitting interface.
  50. // Hook in assembler or system specific BLT
  51. //  here.
  52. void R_DrawColumn (void);
  53. void R_DrawColumnLow (void);
  54.  
  55. // The Spectre/Invisibility effect.
  56. void    R_DrawFuzzColumn (void);
  57. void     R_DrawFuzzColumnLow (void);
  58.  
  59. // Draw with color translation tables,
  60. //  for player sprite rendering,
  61. //  Green/Red/Blue/Indigo shirts.
  62. void    R_DrawTranslatedColumn (void);
  63. void    R_DrawTranslatedColumnLow (void);
  64.  
  65. void
  66. R_VideoErase
  67. ( unsigned    ofs,
  68.   int        count );
  69.  
  70. extern int        ds_y;
  71. extern int        ds_x1;
  72. extern int        ds_x2;
  73.  
  74. extern lighttable_t*    ds_colormap;
  75.  
  76. extern fixed_t        ds_xfrac;
  77. extern fixed_t        ds_yfrac;
  78. extern fixed_t        ds_xstep;
  79. extern fixed_t        ds_ystep;
  80.  
  81. // start of a 64*64 tile image
  82. extern byte*        ds_source;        
  83.  
  84. extern byte*        translationtables;
  85. extern byte*        dc_translation;
  86.  
  87.  
  88. // Span blitting for rows, floor/ceiling.
  89. // No Sepctre effect needed.
  90. void R_DrawSpan (void);
  91.  
  92. // Low resolution mode, 160x200?
  93. void     R_DrawSpanLow (void);
  94.  
  95. void
  96. R_InitBuffer
  97. ( int        width,
  98.   int        height );
  99.  
  100.  
  101. // Initialize color translation tables,
  102. //  for player rendering etc.
  103. void    R_InitTranslationTables (void);
  104.  
  105.  
  106.  
  107. // Rendering function.
  108. void R_FillBackScreen (void);
  109.  
  110. // If the view size is not full screen, draws a border around it.
  111. void R_DrawViewBorder (void);
  112.  
  113.  
  114.  
  115. #endif
  116. //-----------------------------------------------------------------------------
  117. //
  118. // $Log:$
  119. //
  120. //-----------------------------------------------------------------------------
  121.